<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // // 1. 筛选数组中 字母数量大于等于6的数组项 放入新数组中 (arr.filter)
        // // 2. 查找数组中 有没有字母数量大于等于6的 如果有 输出true 如果没有 输出false (arr.some)
        // // 3. 查找数组中 字母数量大于等于6的个数
        // // 4. 查找数组中 字母数量大于等于6的数组项 如果有 输出该数组项 如果没有 输出null (arr.find)
        // // 5. 查找数组中 字母数量大于等于6的数组项 如果有 输出该数组项的索引 如果没有 输出-1 (arr.findIndex)
        // var words = ['icon', 'inline', 'font', 'inline', 'navigator', 'auto', 'font', 'inline', 'block', 'count', 'transform', 'translate'];

        // // 1.
        // var result = [];
        // for (var i = 0; i < words.length; i++) {
        //     // 当前数组项
        //     var word = words[i];
        //     if (word.length >= 6) {
        //         result.push(word);
        //     }
        // }

        // console.log(result);

        // // 2.
        // // 默认找不到
        // var flag = false;
        // for (var i = 0; i < words.length; i++) {
        //     // 当前数组项
        //     var word = words[i];
        //     if (word.length >= 6) {
        //         flag = true;
        //         break;
        //     }
        // }

        // console.log(flag);

        // // 3.
        // var count = 0;
        // for (var i = 0; i < words.length; i++) {
        //     // 当前数组项
        //     var word = words[i];
        //     if (word.length >= 6) {
        //         count++;
        //     }
        // }

        // console.log(count);

        // // 4. 找第一个匹配项
        // var result = null;
        // for (var i = 0; i < words.length; i++) {
        //     // 当前数组项
        //     var word = words[i];
        //     if (word.length >= 6) {
        //         // 找到了
        //         result = word;
        //         break;
        //     }
        // }

        // console.log(result);

        // // 5. 找第一个匹配项的索引
        // var resultIdx = -1;
        // for (var i = 0; i < words.length; i++) {
        //     // 当前数组项
        //     var word = words[i];
        //     if (word.length >= 6) {
        //         // 找到了
        //         resultIdx = i;
        //         break;
        //     }
        // }

        // console.log(resultIdx);

        // // 将arr转换为新数组['aaa', 'bb', 'cccc', 'ddddddd']
        // var arr = ['a', 'a', 'a', '*', 'b', 'b', '*', 'c', 'c', 'c', 'c', '*', 'd', 'd', 'd', 'd', 'd', 'd', 'd'];
        // var result = [];
        // var tmp = '';

        // // arr.push('*'); // 方案1 扔一个*触发循环体中的if
        // for (var i = 0; i < arr.length; i++) {
        //     var letter = arr[i];
        //     if (letter === '*') {
        //         result.push(tmp);
        //         tmp = '';
        //         continue;
        //     }
        //     tmp += letter;
        // }

        // result.push(tmp); // 手动推最后一轮

        // console.log(result);

        // 统计words数组中 重复项的个数
        var words = ['icon', 'inline', 'font', 'inline', 'navigator', 'auto', 'font', 'inline', 'block', 'count', 'transform', 'translate'];
        // inline: 3
        // font: 2
        // var result = [
        //     ['icon', 1],
        //     ['inline', 3],
        //     ['font', 2],
        // ];

        var result = [];

        for (var i = 0; i < words.length; i++) {
            // 当前单词
            var currentWord = words[i];
            // 查找result数组中有没有currentWord
            var findedIdx = -1; // 找没找到
            for (var j = 0; j < result.length; j++) {
                var resultItem = result[j]; // ['icon', 1]
                if (currentWord === resultItem[0]) {
                    findedIdx = j; // 找到了
                    break;
                }
            }

            // 找到了 就把当前记录项 +1
            if (findedIdx !== -1) {
                // ['icon', 1]
                result[findedIdx][1]++;
            } else {
                // 没找到 就生成一个新的记录项
                // 新的result数组项
                var arrItem = [currentWord, 1];
                result.push(arrItem);
            }

        }

        console.log(result);

        // 1. 筛选数字大于1的数组项
        // 2. 求和
        var arr = [
            ['icon', 1],
            ['inline', 3],
            ['font', 2],
            ['navigator', 1],
            ['auto', 1],
            ['block', 1],
            ['count', 1],
            ['transform', 1],
            ['translate', 1],
        ];

        // // 先把icon inline ... translate依次打印出来
        // for (var i = 0; i < arr.length; i++) {
        //     var arrItem = arr[i]; // ['icon', 1]
        //     console.log(arrItem[0]);
        //     // console.log(arr[i][0]);
        // }

        // 求和
        var sum = 0;
        for (var i = 0; i < arr.length; i++) {
            var arrItem = arr[i]; // ['icon', 1]
            sum += arrItem[1];
        }
        console.log(sum);

        // 筛选
        var result = [];
        for (var i = 0; i < arr.length; i++) {
            var arrItem = arr[i]; // ['icon', 1]
            if (arrItem[1] > 1) {
                result.push(arrItem);
            }
        }
        console.log(result);


    </script>
</body>
</html>